'use strict';

const Controller = require('egg').Controller;

class PubfileController extends Controller {
    // 创建控制器——POST——/name
    async create() {
        const { ctx } = this;
        const { filename, file_dir, } = ctx.request.body;
        const pfile = {
            filename,
            file_dir,
        }
        const result = await ctx.service.pubfile.add(pfile);

        ctx.status = 201;
        ctx.body = result;
    }
    // 查询获取数据用控制器——GET——/name?keywords=?&&.....
    async index() {
        const { ctx } = this;
        const keywords = ctx.query.keywords ? ctx.query.keywords : '';
        const pageIndex = ctx.query.pageIndex ? +ctx.query.pageIndex : 1;
        const pageSize = ctx.query.pageSize ? +ctx.query.pageSize : 5;
        console.log('keywords', keywords);
        const result = await ctx.service.pubfile.findList(keywords, pageIndex, pageSize);
        ctx.status = 200;
        ctx.body = result;
    }
    // // // 根据id获取信息的控制器方法——GET——/name/:id
    async show() {
        const { ctx } = this;
        const id = ctx.params.id;
        const result = await ctx.service.pubfile.findById(id);
        ctx.status = 200;
        ctx.body = result;
    }
    // // // 根据id修改对应的数据的控制器方法——PUT——/name/:id
    // 这里需要修改吗？
    // async update() {
    //     const { ctx } = this;
    //     const id = ctx.params.id;
    //     const {
    //         filename,
    //     } = ctx.request.body;
    //     const result = await ctx.service.pubfile.modify({ 
    //         id,
    //         filename
    //     });
    //     ctx.body = result;
    // }
    // // // // 根据id删除对应的数据的控制器方法——DELETE——/name/:id
    async destroy(){
        const { ctx } = this;
        const id = ctx.params.id;
        const result = await ctx.service.pubfile.remove(id);
        ctx.status = 200;
        ctx.body = result;
    }
}
module.exports = PubfileController;